<?php

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

class UsersController extends AppController {

    var $name = 'Users';

    function send() {
        App::import('Vendor', 'ClassPhpmailer', array('file' => 'phpmailer/class.phpmailer.php'));
        // $this->layout = "ajax";
        if (empty($this->data)) {
            
        } else {
            $this->User->recursive = 0;
            if ($users = $this->User->find('all', array('conditions' => array('User.email' => $this->data['User']['correo']), 'fields' => array('User.email', 'User.username', 'User.nombre', 'User.primer_apellido', 'User.segundo_apellido', 'User.id')))) {
                foreach ($users as $user) {
                    $this->User->create();
                    $this->User->id = $user['User']['id'];

                    //Generamos la nueva clave de forma aleatorea

                    $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890";
                    $clave = "";
                    for ($i = 0; $i < 8; $i++) {
                        $clave .= substr($str, rand(0, 62), 1);
                    }

                    $this->request->data['User']['password'] = $this->Auth->password($clave);
                    if ($this->User->save($this->data)) {
                        $mail = new PHPMailer();

//Luego tenemos que iniciar la validación por SMTP: 
                        $mail->IsSMTP();
                        $mail->SMTPAuth = true;
                        $mail->Host = "ssl://smtp.gmail.com"; // SMTP a utilizar. Por ej. smtp.elserver.com 
                        $mail->Username = "wavelino@incoder.gov.co"; // Correo completo a utilizar 
                        $mail->Password = "m80252564"; // Contraseña 
                        $mail->Port = 465; // Puerto a utilizar 
//Con estas pocas líneas iniciamos una conexión con el SMTP. Lo que ahora deberíamos hacer, es configurar el mensaje a enviar, el //From, etc. 
                        $mail->From = "wavelino@incoder.gov.co"; // Desde donde enviamos (Para mostrar) 
                        $mail->FromName = utf8_decode("PROGRAMA DRE-AIS INCENTIVO ECONÓMICO DE ASISTENCIA TÉCNICA DIRECTA RURAL");

//Estas dos líneas, cumplirían la función de encabezado (En mail() usado de esta forma: “From: Nombre <correo@dominio.com>”) de //correo. 
//$mail->AddAddress('wilavel@gmail.com');// Esta es la dirección a donde enviamos 
                        $mail->AddAddress($user['User']['email']);
                        $mail->IsHTML(true);
//$mail->IsHTML(true); // El correo se envía como HTML 
                        $mail->Subject = "Cambio de clave"; // Este es el titulo del email. 
                        $body = "Se ha cambiado exitosamente su clave, los datos de su cuenta son: <br>";
                        $body .= " <strong>Nombre: " . $user['User']['nombre'] . " " . $user['User']['primer_apellido'] . " " . $user['User']['segundo_apellido'] . "</strong><br>";
                        $body .= " <strong>Usuario: " . $user['User']['username'] . "</strong><br>";
                        $body .= " <strong>Nueva Clave: " . $clave . "</strong><br>";
                        $mail->Body = $body; // Mensaje a enviar 
//$mail->SMTPDebug = 1;

                        $exito = $mail->Send(); // Envía el correo. 
//También podríamos agregar simples verificaciones para saber si se envió: 
                        if ($exito) {
                            $this->Session->setFlash("Sus datos fueron enviados al correo  " . $user['User']['email']);
                        } else {
                            $this->Session->setFlash("Error :  " . $user['User']['email'] . " " . $mail->ErrorInfo);
                        }
                        $this->redirect(array('controller' => 'Users', 'action' => "send"));
                    } else {
                        $this->Session->setFlash("Error Guardando Datos");
                    }
                }
            } else {
                $this->Session->setFlash("No existe un usuario asociado a este correo");
            }
        }
    }

    public function view($user_id = null) {
        if ($this->RequestHandler->isAjax()) {
            $this->layout = "ajax";
        } else {
            $this->layout = "default";
        }

        if (is_null($user_id)) {
            $user_id = $this->Auth->user('id');
        }

        $this->set('user', $this->User->find('first', array('conditions' => array('User.id' => $user_id))));
    }

    function login() {
        $this->pageTitle = 'Inicio';
        if ($this->RequestHandler->isAjax()) {
            $this->layout = "ajax";
        } else {
            $this->layout = "home";
        }
        $this->User->recursive = -1;
        if ($this->request->is('post')) {
            if ($this->Auth->login()) {
                $this->redirect(array('controller' => 'users', 'action' => 'view', $this->Auth->user('id')));
            } else {
                $this->Session->setFlash('Su usuario o contraseña no son correctos.');
            }
        }
    }

    public function upload_file($user_id, $tipo) {

        if ($this->RequestHandler->isAjax()) {
            $this->layout = "ajax";
        } else {
            $this->layout = "home";
        }
        if (empty($this->data)) {
            //envío el id del usuario.
            $this->set('user_id', $user_id);
            $this->set('tipo', $tipo);
        } else {

            if ($tipo == 1) {
                //Formulario
                $nombreArchivo = "Formulario-" . $user_id;
            } else {
                //Cédula
                $nombreArchivo = "Cedula-" . $user_id;
            }

            $nombreArchivo = $nombreArchivo . ".pdf";
            if ($tipo == 1) {
                //Formulario
                $this->request->data['User']['file'] = "files/$nombreArchivo";
            } else {
                //Cédula
                $this->request->data['User']['archivo_cedula'] = "files/$nombreArchivo";
            }

            if ($this->User->save($this->data)) {
                $rutaArchivo = APP . "webroot" . "/" . "files";
                if (!is_dir($rutaArchivo)) {
                    if (!mkdir($rutaArchivo)) {
                        echo "Error creando archivo";
                        //redirect
                    }
                }

                $rutaArchivo.= "/" . $nombreArchivo;
                if (move_uploaded_file($this->data['User']['archivo']['tmp_name'], $rutaArchivo)) {
                    //envío el correo informando 
                    $this->Session->setFlash('Archivo cargado con éxito', 'flash_custom');
                    $this->redirect(array('controller' => 'Users', 'action' => 'view', $user_id));
                } else {
                    $this->Session->setFlash('No es posible cargar el archivo / / /' . $this->data['archivo']['tmp_name']);
                    //$this->redirect(array('controller' => 'Users', 'action' => 'view', $user_id));
                }
            } else {
                $this->Session->setFlash('Error editando datos');
            }
        }
    }

    function admin_login() {
        $this->layout = "login";

        if ($this->request->is('post')) {
            if ($this->Auth->login()) {
                //$this->Auth->loginRedirect = array('controller' => 'pages', 'action' => 'admin_index');
                $this->redirect(array('controller' => 'pages', 'action' => 'admin_index'));
            } else {
                $this->Session->setFlash('Su usuario o contraseña no son correctos.', 'flash_custom');
            }
        }
    }

    function logout() {
        $this->Session->setFlash('Su sesión ha expirado.');
        $this->Session->destroy();
        $this->redirect($this->Auth->logout());
    }

    function index() {
        $str = "";
        if ($this->Auth->user('gropu_id') != 1) {
            $str = "WHERE User.branch_id IN(1,2)";
        }
        $this->set('User', $this->User->query("SELECT distinct(User.id),Branch.nombre,City.id,User.id,User.username,User.email,User.nombre,User.primer_apellido,Departament.nombre , City.nombre,
                                               User.finalizado,User.acepta
                                               FROM `users` User
                                               LEFT JOIN branches Branch ON User.branch_id = Branch.id
                                               LEFT JOIN user_cities UserCity ON User.id = UserCity.user_id
                                               LEFT JOIN cities City ON City.id = UserCity.city_id
                                               LEFT JOIN departaments Departament ON Departament.id = City.departament_id $str ORDER BY Departament.nombre DESC,City.nombre DESC"));
    }

    function index_admin() {

        // $this->User->recursive = 0;
        $this->set('User', $this->User->find('all', array('fields' => array('User.username', 'User.id', 'User.email', 'User.primer_apellido', 'User.nombre', 'Group.name', 'Branch.nombre', 'User.acepta', 'User.finalizado'))));
    }

    function branch_index() {

        $branch_id = $this->Auth->user('branch_id');

        $departamento = $this->User->Branch->find('first', array('recursive' => -1, 'conditions' => array('Branch.id' => $branch_id), 'fields' => array('Branch.departament_id')));
        $dp = $departamento['Branch']['departament_id'];
        $this->set('User', $this->User->query("SELECT distinct(User.id),City.id,Branch.nombre,User.id,User.username,User.email,User.nombre,User.primer_apellido,Departament.nombre , City.nombre,
                                               User.finalizado
                                               FROM `users` User
                                               LEFT JOIN branches Branch ON User.branch_id = Branch.id
                                               LEFT JOIN user_cities UserCity ON User.id = UserCity.user_id
                                               LEFT JOIN cities City ON City.id = UserCity.city_id
                                               LEFT JOIN departaments Departament ON Departament.id = City.departament_id WHERE Departament.id=$dp ORDER BY Departament.nombre DESC,City.nombre DESC"));
    }

    function edit($id) {

        if (empty($this->data)) {
            $this->data = $this->User->find("first", array("conditions" => array("User.id" => $id)));
        } else {
            if ($this->User->save($this->data)) {

                $this->Session->setFlash("Usuario editado con éxito", 'flash_custom');
                $this->redirect(array('controller' => 'users', 'action' => "view", $id));
            } else {
                $this->Session->setFlash("Error Guardando Datos", 'flash_custom');
            }
        }
    }

    function finish($id) {

        App::Import('model', 'UserCity');
        $UserCity = new UserCity();
        App::Import('model', 'Departament');
        $Departament = new Departament();
        $this->request->data['User']['finalizado'] = 1;
        $this->request->data['User']['id'] = $id;
        $user = $this->User->find('first', array('conditions' => array('User.id' => $id), 'fields' => array('User.*', 'Group.name')));


        //Luego tenemos que iniciar la validación por SMTP: 
        App::import('Vendor', 'ClassPhpmailer', array('file' => 'phpmailer/class.phpmailer.php'));

        $mail = new PHPMailer();
        $mail->IsSMTP();
        $mail->SMTPAuth = true;
        $mail->Host = "ssl://smtp.gmail.com"; // SMTP a utilizar. Por ej. smtp.elserver.com 
        $mail->Username = "wavelino@incoder.gov.co"; // Correo completo a utilizar 
        $mail->Password = "m80252564"; // Contraseña 
        $mail->Port = 465; // Puerto a utilizar 
//Con estas pocas líneas iniciamos una conexión con el SMTP. Lo que ahora deberíamos hacer, es configurar el mensaje a enviar, el //From, etc. 
        $mail->From = "wavelino@incoder.gov.co"; // Desde donde enviamos (Para mostrar) 
        $mail->AddAddress($user['User']['email']);
        $mail->AddAddress('jrevelo@incoder.gov.co');
        $mail->AddAddress('jmmejia@incoder.gov.co');
        $mail->AddAddress('dre@minagricultura.gov.co');
        $mail->IsHTML(true);
        $mail->FromName = utf8_decode("PROGRAMA DRE-AIS INCENTIVO ECONÓMICO DE ASISTENCIA TÉCNICA DIRECTA RURAL");

        if (($user['User']['acepta'] == "Si" and file_exists($user['User']['file']) and file_exists($user['User']['archivo_cedula']))) {
            if ($this->User->save($this->data)) {
                $this->Session->setFlash("Inscripción realizada con éxito", 'flash_custom');
                if ($user['User']['branch_id'] == 2) {
                    //si es un CPGA
                    $UserCity->recursive = -1;
                    $municipios = $UserCity->find('all', array('conditions' => array('UserCity.user_id' => $id), 'fields' => array('City.nombre', 'Departament.nombre'), 'joins' => array(array('table' => 'cities', 'alias' => 'City', 'type' => 'left', 'conditions' => array('City.id=UserCity.city_id')), array('table' => 'users', 'alias' => 'User', 'type' => 'left', 'conditions' => array('User.id=UserCity.user_id')), array('table' => 'departaments', 'alias' => 'Departament', 'type' => 'left', 'conditions' => array('Departament.id=City.departament_id')))));
                    $mail->Subject = utf8_decode("Finalización inscripción"); // Este es el titulo del email. 
                    $body = utf8_decode("Su inscripción ha sido finalizada, si tiene alguna duda por favor comuniquese al correo jrevelo@incoder.gov.co: ") . " <br>";
                    $body .= " <strong>Nombre: " . $user['User']['nombre'] . " " . $user['User']['primer_apellido'] . " " . $user['User']['segundo_apellido'] . "</strong><br>";
                    $body .= "Nit:" . $user['User']['nit'] . $user['User']['digito_verificacion'] . "<br>";
                    $body .= "Razón social:" . $user['User']['razon_social'] . "<br>";

                    $body.='
        <table border = "1" width="100%" >
        <thead>
        <tr style="text-align:center">
        <th >No</th>
        <th>Departamento</th>
        <th>Municipio</th>
        </tr>
        </thead>
        <tbody>';

                    $numero = 0;
                    foreach ($municipios as $municipio) {
                        $body.='<tr style="text-align:center">
        <td >' . ++$numero . '</td>
        <td>' . $municipio['Departament']['nombre'] . '</td>
        <td>' . $municipio['City']['nombre'] . '</td>
        </tr>';
                    }
                    $body.='</tbody>
        </table>';
                } else {
                    //si es un municipio
                    $municipio = $UserCity->find('first', array('conditions' => array('UserCity.user_id' => $id), 'fields' => array('City.nombre', 'City.departament_id'), 'recursive' => 1));
                    $departamento = $Departament->find('first', array('conditions' => array('Departament.id' => $municipio['City']['departament_id']), 'fields' => array('Departament.nombre'), 'recursive' => 0));
                    $mail->Subject = utf8_decode("Finalización inscripción"); // Este es el titulo del email. 
                    $body = "Su inscripción ha sido finalizada, si tiene alguna duda por favor comuniquese al correo jrevelo@incoder.gov.co: <br>";
                    $body .= " <strong>Nombre: " . $user['User']['nombre'] . " " . $user['User']['primer_apellido'] . " " . $user['User']['segundo_apellido'] . "</strong><br>";
                    $body .= " <strong>Municipio: " . utf8_decode($municipio['City']['nombre']) . " Perteniciente al departamento " . utf8_decode($departamento['Departament']['nombre']) . "</strong><br>";
                }

                $mail->Body = $body; // Mensaje a enviar 
//$mail->SMTPDebug = 1;
                $mail->Send(); // Envía el correo.
                $this->redirect(array('controller' => 'users', 'action' => "view", $id));
            } else {
                $this->Session->setFlash("Error Guardando Datos", 'flash_custom');
                $this->redirect(array('controller' => 'users', 'action' => "view", $id));
            }
        } elseif ($user['User']['acepta'] == "No") {

            if ($this->User->save($this->data)) {
                $this->Session->setFlash("Inscripción realizada con éxito", 'flash_custom');
                $body .= " <strong>NO SE ACEPTARON LAS CONDICIONES DE LA CONVOCATORIA</strong><br>";

                $mail->Body = $body; // Mensaje a enviar 
                $mail->Send(); // Envía el correo.
                $this->redirect(array('controller' => 'users', 'action' => "view", $id));
            } else {
                $this->Session->setFlash("Error Guardando Datos", 'flash_custom');
                $this->redirect(array('controller' => 'users', 'action' => "view", $id));
            }

            $this->Session->setFlash("Inscripción realizada con éxito", 'flash_custom');
            $this->redirect(array('controller' => 'users', 'action' => "view", $id));
        } else {
            $this->Session->setFlash("No se han adjuntado los archivos requeridos", 'flash_custom');
            $this->redirect(array('controller' => 'users', 'action' => "view", $id));
        }
    }

    function edit_user() {
        $this->layout = "ajax";
        if (empty($this->data)) {
            $id = $this->Auth->user('id');
            $this->data = $this->User->find("first", array("conditions" => array("User.id" => $id)));
        } else {
            if ($this->Auth->password($this->data['User']['password']) != $this->Auth->password($this->data['User']['password_confirm'])) {
                echo "<script>alert('Las contraseñas no coinciden')</script>";
            } else {
                $this->request->data['User']['password'] = $this->Auth->password($this->request->data['User']['password']);
                if ($this->User->save($this->data)) {

                    $this->Session->setFlash("Usuario editado con exito", 'flash_custom');
                    $this->redirect(array('controller' => 'Pages', 'action' => "display"));
                } else {
                    $this->Session->setFlash("Error Guardando Datos", 'flash_custom');
                }
            }
        }
    }

    function edition($id) {
        $this->layout = "ajax";
        $this->set('branches', $this->User->Branch->find('list', array('order' => 'nombre ASC', 'fields' => array('id', 'nombre'))));
        $this->set('groups', $this->User->Group->find('list', array('order' => 'name ASC')));

        if (empty($this->data)) {
            $this->data = $this->User->find("first", array("conditions" => array("User.id" => $id)));
        } else {

            if ($this->User->save($this->data)) {

                $this->Session->setFlash("Usuario editado con exito", 'flash_custom');
                $this->redirect(array('controller' => 'Users', 'action' => "index_admin"));
            } else {
                $this->Session->setFlash("Error Guardando Datos", 'flash_custom');
            }
        }
    }

    function add() {
        $this->layout = "ajax";

        if (empty($this->data)) {
            $this->set('branches', $this->User->Branch->find('list', array('order' => 'nombre ASC', 'fields' => array('id', 'nombre'))));
            $this->set('groups', $this->User->Group->find('list', array('order' => 'name ASC')));
        } else {
            $this->request->data['User']['password'] = $this->Auth->password($this->request->data['User']['password']);
            if ($this->User->save($this->data)) {

                $this->Session->setFlash("Usuario creado con éxito", 'flash_custom');
                $this->redirect(array('controller' => 'Users', 'action' => "index_admin"));
            } else {
                $this->Session->setFlash("Error Guardando Datos", 'flash_custom');
            }
        }
    }

    function free_add() {
        $this->layout = "ajax";


        if (!empty($this->data)) {

            //si los campos no vienen vacios

            $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890";
            $clave = "";
            for ($i = 0; $i < 8; $i++) {
                $clave .= substr($str, rand(0, 62), 1);
            }
            $this->request->data['User']['password'] = $this->Auth->password($clave);
            $this->request->data['User']['username'] = $this->request->data['User']['email'];
            if ($this->request->data['User']['branch_id'] == 1 AND empty($this->request->data['User']['city_id'])) {
                $this->Session->setFlash('Es obligatorio registrar el municipio intentelo de nuevo', 'flash_custom');
                $this->redirect(array('controller' => 'Pages', 'action' => 'display'));
            }
            if ($this->User->find('first', array('conditions' => array('User.email' => $this->request->data['User']['email'])))) {
                $this->Session->setFlash('Ya existe un usario con el correo ' . $this->request->data['User']['email'] . " intentelo de nuevo.", 'flash_custom');
                $this->redirect(array('controller' => 'Pages', 'action' => 'display'));
            } elseif ($this->User->find('first', array('conditions' => array('User.username' => $this->request->data['User']['username'])))) {
                $this->Session->setFlash('Ya existe un usario con este nombre ' . $this->request->data['User']['username'] . " intentelo de nuevo.", 'flash_custom');
                $this->redirect(array('controller' => 'Pages', 'action' => 'display'));
            } else {
                if ($this->User->save($this->request->data)) {
                    if (!empty($this->request->data['User']['city_id'])) {

                        $this->User->query("DELETE FROM user_cities WHERE user_id=" . $this->User->getLastInsertID());
                        $this->User->query("INSERT INTO user_cities (user_id,city_id) VALUES (" . $this->User->getLastInsertID() . "," . $this->request->data['User']['city_id'] . ");");
                    }

                    App::import('Vendor', 'ClassPhpmailer', array('file' => 'phpmailer/class.phpmailer.php'));
                    $mail = new PHPMailer();

//Luego tenemos que iniciar la validación por SMTP: 
                    $mail->IsSMTP();
                    $mail->SMTPAuth = true;
                    $mail->Host = "ssl://smtp.gmail.com"; // SMTP a utilizar. Por ej. smtp.elserver.com 
                    $mail->Username = "wavelino@incoder.gov.co"; // Correo completo a utilizar 
                    $mail->Password = "m80252564"; // Contraseña 
                    $mail->Port = 465; // Puerto a utilizar 
//Con estas pocas líneas iniciamos una conexión con el SMTP. Lo que ahora deberíamos hacer, es configurar el mensaje a enviar, el //From, etc. 
                    $mail->From = "wavelino@incoder.gov.co"; // Desde donde enviamos (Para mostrar) 
                    $mail->FromName = "REGISTRO EXITOSO DE USUARIO ";

//Estas dos líneas, cumplirían la función de encabezado (En mail() usado de esta forma: “From: Nombre <correo@dominio.com>”) de //correo. 
//$mail->AddAddress('wilavel@gmail.com');// Esta es la dirección a donde enviamos 
                    $mail->AddAddress($this->request->data['User']['email']);
                    $mail->IsHTML(true);
//$mail->IsHTML(true); // El correo se envía como HTML 
                    $mail->Subject = utf8_decode("PROGRAMA DRE-AIS INCENTIVO ECONÓMICO DE ASISTENCIA TÉCNICA DIRECTA RURAL"); // Este es el titulo del email. 
                    $body = "Su usuario se ha creado de forma exitosa, los datos de su cuenta son: <br>";
                    $body .= " <strong>Usuario: " . $this->request->data['User']['username'] . "</strong><br>";
                    $body .= " <strong>Clave: " . $clave . "</strong><br>";
                    $body .= " <strong>Recuerde cambiar su contraseña.</strong><br>";
                    $body .= " <strong>Puede ingresar desde haciendo clic <a href='http://200.93.164.202:86/inscripcion'>Desde aquí</a> </strong><br>";
                    $mail->Body = $body; // Mensaje a enviar 
//$mail->SMTPDebug = 1;

                    $exito = $mail->Send(); // Envía el correo. 
//También podríamos agregar simples verificaciones para saber si se envió: 
                    if ($exito) {
                        $this->Session->setFlash("Sus datos fueron envados al correo  " . $this->request->data['User']['email']);
                    } else {
                        $this->Session->setFlash("Error :  " . $this->request->data['User']['email'] . " " . $mail->ErrorInfo);
                    }
                    $this->Session->setFlash('Usuario creado con éxito, se envió un correo con la información necesaria para el ingreso usando el botón ingresar.', 'flash_custom');
                    $this->redirect(array('controller' => 'Pages', 'action' => 'display'));
                }
            }
        }
    }

    function select_type() {

        $this->set('tipo', $this->data['User']['branch_id']);
        App::Import('model', 'Departament');
        $Departament = new Departament();
        $this->set('departaments', $Departament->find('list', array('fields' => array('Departament.id', 'Departament.nombre'), 'order' => 'Departament.nombre ASC')));
    }

    function select_city() {
        App::Import('model', 'Departament');
        $Departament = new Departament();
        $this->set('cities', $Departament->City->find('list', array('fields' => array('City.id', 'City.nombre'), 'conditions' => array('City.departament_id' => $this->data['User']['departament_id']), 'order' => 'City.nombre ASC')));
    }

    function delete($id, $tipo) {

        if ($this->User->delete($id)) {
            $this->User->query('DELETE FROM user_cities WHERE user_id=' . $id);

            $this->Session->setFlash('Usuario Borrado con exito', 'flash_custom');
            if ($tipo == 1) {
                $this->redirect(array('controller' => 'Users', 'action' => 'branch_index'));
            } elseif ($tipo == 2) {
                $this->redirect(array('controller' => 'Users', 'action' => 'index'));
            } else {
                $this->redirect(array('controller' => 'Users', 'action' => 'index_admin'));
            }
        }
    }

    function print_file($id) {
        $this->layout = 'pdf';
        $this->response->header(array('Content-type: application/pdf'));

        App::Import('model', 'UserCity');
        $UserCity = new UserCity();

        App::Import('model', 'Departament');
        $Departament = new Departament();

        $user = $this->User->find('first', array('conditions' => array('User.id' => $id)));

        if ($user['User']['branch_id'] == 2) {
            //si es un CPGA
            $UserCity->recursive = -1;
            $municipios = $UserCity->find('all', array('conditions' => array('UserCity.user_id' => $id), 'fields' => array('City.nombre', 'Departament.nombre'), 'joins' => array(array('table' => 'cities', 'alias' => 'City', 'type' => 'left', 'conditions' => array('City.id=UserCity.city_id')), array('table' => 'users', 'alias' => 'User', 'type' => 'left', 'conditions' => array('User.id=UserCity.user_id')), array('table' => 'departaments', 'alias' => 'Departament', 'type' => 'left', 'conditions' => array('Departament.id=City.departament_id')))));
            $this->set('municipios', $municipios);
        } else {
            //si es un municipio
            $municipio = $UserCity->find('first', array('conditions' => array('UserCity.user_id' => $id), 'fields' => array('City.nombre', 'City.departament_id'), 'recursive' => 1));
            $departamento = $Departament->find('first', array('conditions' => array('Departament.id' => $municipio['City']['departament_id']), 'fields' => array('Departament.nombre'), 'recursive' => 0));
            $this->set('municipio', $municipio);
            $this->set('departamento', $departamento);
        }



        $this->set('user', $user);
    }

}

?>
